package cn.yuanqiao.archive.detection.mapper;

import cn.yuanqiao.archive.appManager.domain.DataScopeBase;
import cn.yuanqiao.archive.detection.domain.InspectionRecords;
import cn.yuanqiao.common.annotation.DataScope;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 四性检测记录Mapper接口
 * 
 * @author xy
 * @date 2023-08-07
 */
@Mapper
public interface InspectionRecordsMapper 
{
    /**
     * 查询四性检测记录
     * 
     * @param id 四性检测记录主键
     * @return 四性检测记录
     */
    public InspectionRecords selectInspectionRecordsById(@Param("id")Long id, @Param("tableName") String tableName);

    /**
     * 查询四性检测记录列表
     * 
     * @param inspectionRecords 四性检测记录
     * @return 四性检测记录集合
     */
    @DataScope(deptAlias = "d", userAlias = "a",deptColumn = "DEPT_ID",userColumn = "CREATE_ID")
    public List<InspectionRecords> selectInspectionRecordsList(@Param("dataScopeBase") DataScopeBase dataScopeBase, @Param("inspectionRecords") InspectionRecords inspectionRecords);

    /**
     * 新增四性检测记录
     * 
     * @param inspectionRecords 四性检测记录
     * @return 结果
     */
    public int insertInspectionRecords(InspectionRecords inspectionRecords);

    /**
     * 修改四性检测记录
     * 
     * @param inspectionRecords 四性检测记录
     * @return 结果
     */
    public int updateInspectionRecords(InspectionRecords inspectionRecords);

    /**
     * 删除四性检测记录
     * 
     * @param id 四性检测记录主键
     * @return 结果
     */
    public int deleteInspectionRecordsById(Long id);

    /**
     * 批量删除四性检测记录
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteInspectionRecordsByIds(@Param("ids")Long[] ids, @Param("tableName") String tableName);

}
